{"ast":null,"code":"import classNames from 'classnames';\nimport RcTable, { Summary } from 'rc-table';\nimport { convertChildrenToColumns } from \"rc-table/es/hooks/useColumns\";\nimport { INTERNAL_HOOKS } from \"rc-table/es/Table\";\nimport omit from \"rc-util/es/omit\";\nimport * as React from 'react';\nimport { ConfigContext } from '../config-provider/context';\nimport defaultRenderEmpty from '../config-provider/defaultRenderEmpty';\nimport SizeContext from '../config-provider/SizeContext';\nimport useBreakpoint from '../grid/hooks/useBreakpoint';\nimport defaultLocale from '../locale/en_US';\nimport Pagination from '../pagination';\nimport Spin from '../spin';\nimport scrollTo from '../_util/scrollTo';\nimport warning from '../_util/warning';\nimport Column from './Column';\nimport ColumnGroup from './ColumnGroup';\nimport renderExpandIcon from './ExpandIcon';\nimport useFilter, { getFilterData } from './hooks/useFilter';\nimport useLazyKVMap from './hooks/useLazyKVMap';\nimport usePagination, { DEFAULT_PAGE_SIZE, getPaginationParam } from './hooks/usePagination';\nimport useSelection, { SELECTION_ALL, SELECTION_COLUMN, SELECTION_INVERT, SELECTION_NONE } from './hooks/useSelection';\nimport useSorter, { getSortData } from './hooks/useSorter';\nimport useTitleColumns from './hooks/useTitleColumns';\nimport useStyle from './style';\nconst EMPTY_LIST = [];\nfunction InternalTable(props, ref) {\n  const {\n    prefixCls: customizePrefixCls,\n    className,\n    style,\n    size: customizeSize,\n    bordered,\n    dropdownPrefixCls: customizeDropdownPrefixCls,\n    dataSource,\n    pagination,\n    rowSelection,\n    rowKey = 'key',\n    rowClassName,\n    columns,\n    children,\n    childrenColumnName: legacyChildrenColumnName,\n    onChange,\n    getPopupContainer,\n    loading,\n    expandIcon,\n    expandable,\n    expandedRowRender,\n    expandIconColumnIndex,\n    indentSize,\n    scroll,\n    sortDirections,\n    locale,\n    showSorterTooltip = true\n  } = props;\n  if (process.env.NODE_ENV !== 'production') {\n    process.env.NODE_ENV !== \"production\" ? warning(!(typeof rowKey === 'function' && rowKey.length > 1), 'Table', '`index` parameter of `rowKey` function is deprecated. There is no guarantee that it will work as expected.') : void 0;\n  }\n  const baseColumns = React.useMemo(() => columns || convertChildrenToColumns(children), [columns, children]);\n  const needResponsive = React.useMemo(() => baseColumns.some(col => col.responsive), [baseColumns]);\n  const screens = useBreakpoint(needResponsive);\n  const mergedColumns = React.useMemo(() => {\n    const matched = new Set(Object.keys(screens).filter(m => screens[m]));\n    return baseColumns.filter(c => !c.responsive || c.responsive.some(r => matched.has(r)));\n  }, [baseColumns, screens]);\n  const tableProps = omit(props, ['className', 'style', 'columns']);\n  const size = React.useContext(SizeContext);\n  const {\n    locale: contextLocale = defaultLocale,\n    renderEmpty,\n    direction\n  } = React.useContext(ConfigContext);\n  const mergedSize = customizeSize || size;\n  const tableLocale = Object.assign(Object.assign({}, contextLocale.Table), locale);\n  const rawData = dataSource || EMPTY_LIST;\n  const {\n    getPrefixCls\n  } = React.useContext(ConfigContext);\n  const prefixCls = getPrefixCls('table', customizePrefixCls);\n  const dropdownPrefixCls = getPrefixCls('dropdown', customizeDropdownPrefixCls);\n  const mergedExpandable = Object.assign({\n    childrenColumnName: legacyChildrenColumnName,\n    expandIconColumnIndex\n  }, expandable);\n  const {\n    childrenColumnName = 'children'\n  } = mergedExpandable;\n  const expandType = React.useMemo(() => {\n    if (rawData.some(item => item === null || item === void 0 ? void 0 : item[childrenColumnName])) {\n      return 'nest';\n    }\n    if (expandedRowRender || expandable && expandable.expandedRowRender) {\n      return 'row';\n    }\n    return null;\n  }, [rawData]);\n  const internalRefs = {\n    body: React.useRef()\n  };\n  // ============================ RowKey ============================\n  const getRowKey = React.useMemo(() => {\n    if (typeof rowKey === 'function') {\n      return rowKey;\n    }\n    return record => record === null || record === void 0 ? void 0 : record[rowKey];\n  }, [rowKey]);\n  const [getRecordByKey] = useLazyKVMap(rawData, childrenColumnName, getRowKey);\n  // ============================ Events =============================\n  const changeEventInfo = {};\n  const triggerOnChange = function (info, action) {\n    let reset = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n    const changeInfo = Object.assign(Object.assign({}, changeEventInfo), info);\n    if (reset) {\n      changeEventInfo.resetPagination();\n      // Reset event param\n      if (changeInfo.pagination.current) {\n        changeInfo.pagination.current = 1;\n      }\n      // Trigger pagination events\n      if (pagination && pagination.onChange) {\n        pagination.onChange(1, changeInfo.pagination.pageSize);\n      }\n    }\n    if (scroll && scroll.scrollToFirstRowOnChange !== false && internalRefs.body.current) {\n      scrollTo(0, {\n        getContainer: () => internalRefs.body.current\n      });\n    }\n    onChange === null || onChange === void 0 ? void 0 : onChange(changeInfo.pagination, changeInfo.filters, changeInfo.sorter, {\n      currentDataSource: getFilterData(getSortData(rawData, changeInfo.sorterStates, childrenColumnName), changeInfo.filterStates),\n      action\n    });\n  };\n  /**\n   * Controlled state in `columns` is not a good idea that makes too many code (1000+ line?) to read\n   * state out and then put it back to title render. Move these code into `hooks` but still too\n   * complex. We should provides Table props like `sorter` & `filter` to handle control in next big\n   * version.\n   */\n  // ============================ Sorter =============================\n  const onSorterChange = (sorter, sorterStates) => {\n    triggerOnChange({\n      sorter,\n      sorterStates\n    }, 'sort', false);\n  };\n  const [transformSorterColumns, sortStates, sorterTitleProps, getSorters] = useSorter({\n    prefixCls,\n    mergedColumns,\n    onSorterChange,\n    sortDirections: sortDirections || ['ascend', 'descend'],\n    tableLocale,\n    showSorterTooltip\n  });\n  const sortedData = React.useMemo(() => getSortData(rawData, sortStates, childrenColumnName), [rawData, sortStates]);\n  changeEventInfo.sorter = getSorters();\n  changeEventInfo.sorterStates = sortStates;\n  // ============================ Filter ============================\n  const onFilterChange = (filters, filterStates) => {\n    triggerOnChange({\n      filters,\n      filterStates\n    }, 'filter', true);\n  };\n  const [transformFilterColumns, filterStates, filters] = useFilter({\n    prefixCls,\n    locale: tableLocale,\n    dropdownPrefixCls,\n    mergedColumns,\n    onFilterChange,\n    getPopupContainer\n  });\n  const mergedData = getFilterData(sortedData, filterStates);\n  changeEventInfo.filters = filters;\n  changeEventInfo.filterStates = filterStates;\n  // ============================ Column ============================\n  const columnTitleProps = React.useMemo(() => {\n    const mergedFilters = {};\n    Object.keys(filters).forEach(filterKey => {\n      if (filters[filterKey] !== null) {\n        mergedFilters[filterKey] = filters[filterKey];\n      }\n    });\n    return Object.assign(Object.assign({}, sorterTitleProps), {\n      filters: mergedFilters\n    });\n  }, [sorterTitleProps, filters]);\n  const [transformTitleColumns] = useTitleColumns(columnTitleProps);\n  // ========================== Pagination ==========================\n  const onPaginationChange = (current, pageSize) => {\n    triggerOnChange({\n      pagination: Object.assign(Object.assign({}, changeEventInfo.pagination), {\n        current,\n        pageSize\n      })\n    }, 'paginate');\n  };\n  const [mergedPagination, resetPagination] = usePagination(mergedData.length, pagination, onPaginationChange);\n  changeEventInfo.pagination = pagination === false ? {} : getPaginationParam(pagination, mergedPagination);\n  changeEventInfo.resetPagination = resetPagination;\n  // ============================= Data =============================\n  const pageData = React.useMemo(() => {\n    if (pagination === false || !mergedPagination.pageSize) {\n      return mergedData;\n    }\n    const {\n      current = 1,\n      total,\n      pageSize = DEFAULT_PAGE_SIZE\n    } = mergedPagination;\n    process.env.NODE_ENV !== \"production\" ? warning(current > 0, 'Table', '`current` should be positive number.') : void 0;\n    // Dynamic table data\n    if (mergedData.length < total) {\n      if (mergedData.length > pageSize) {\n        process.env.NODE_ENV !== \"production\" ? warning(false, 'Table', '`dataSource` length is less than `pagination.total` but large than `pagination.pageSize`. Please make sure your config correct data with async mode.') : void 0;\n        return mergedData.slice((current - 1) * pageSize, current * pageSize);\n      }\n      return mergedData;\n    }\n    return mergedData.slice((current - 1) * pageSize, current * pageSize);\n  }, [!!pagination, mergedData, mergedPagination && mergedPagination.current, mergedPagination && mergedPagination.pageSize, mergedPagination && mergedPagination.total]);\n  // ========================== Selections ==========================\n  const [transformSelectionColumns, selectedKeySet] = useSelection(rowSelection, {\n    prefixCls,\n    data: mergedData,\n    pageData,\n    getRowKey,\n    getRecordByKey,\n    expandType,\n    childrenColumnName,\n    locale: tableLocale,\n    getPopupContainer\n  });\n  const internalRowClassName = (record, index, indent) => {\n    let mergedRowClassName;\n    if (typeof rowClassName === 'function') {\n      mergedRowClassName = classNames(rowClassName(record, index, indent));\n    } else {\n      mergedRowClassName = classNames(rowClassName);\n    }\n    return classNames({\n      [`${prefixCls}-row-selected`]: selectedKeySet.has(getRowKey(record, index))\n    }, mergedRowClassName);\n  };\n  // ========================== Expandable ==========================\n  // Pass origin render status into `rc-table`, this can be removed when refactor with `rc-table`\n  mergedExpandable.__PARENT_RENDER_ICON__ = mergedExpandable.expandIcon;\n  // Customize expandable icon\n  mergedExpandable.expandIcon = mergedExpandable.expandIcon || expandIcon || renderExpandIcon(tableLocale);\n  // Adjust expand icon index, no overwrite expandIconColumnIndex if set.\n  if (expandType === 'nest' && mergedExpandable.expandIconColumnIndex === undefined) {\n    mergedExpandable.expandIconColumnIndex = rowSelection ? 1 : 0;\n  } else if (mergedExpandable.expandIconColumnIndex > 0 && rowSelection) {\n    mergedExpandable.expandIconColumnIndex -= 1;\n  }\n  // Indent size\n  if (typeof mergedExpandable.indentSize !== 'number') {\n    mergedExpandable.indentSize = typeof indentSize === 'number' ? indentSize : 15;\n  }\n  // ============================ Render ============================\n  const transformColumns = React.useCallback(innerColumns => transformTitleColumns(transformSelectionColumns(transformFilterColumns(transformSorterColumns(innerColumns)))), [transformSorterColumns, transformFilterColumns, transformSelectionColumns]);\n  let topPaginationNode;\n  let bottomPaginationNode;\n  if (pagination !== false && (mergedPagination === null || mergedPagination === void 0 ? void 0 : mergedPagination.total)) {\n    let paginationSize;\n    if (mergedPagination.size) {\n      paginationSize = mergedPagination.size;\n    } else {\n      paginationSize = mergedSize === 'small' || mergedSize === 'middle' ? 'small' : undefined;\n    }\n    const renderPagination = position => /*#__PURE__*/React.createElement(Pagination, Object.assign({}, mergedPagination, {\n      className: classNames(`${prefixCls}-pagination ${prefixCls}-pagination-${position}`, mergedPagination.className),\n      size: paginationSize\n    }));\n    const defaultPosition = direction === 'rtl' ? 'left' : 'right';\n    const {\n      position\n    } = mergedPagination;\n    if (position !== null && Array.isArray(position)) {\n      const topPos = position.find(p => p.includes('top'));\n      const bottomPos = position.find(p => p.includes('bottom'));\n      const isDisable = position.every(p => `${p}` === 'none');\n      if (!topPos && !bottomPos && !isDisable) {\n        bottomPaginationNode = renderPagination(defaultPosition);\n      }\n      if (topPos) {\n        topPaginationNode = renderPagination(topPos.toLowerCase().replace('top', ''));\n      }\n      if (bottomPos) {\n        bottomPaginationNode = renderPagination(bottomPos.toLowerCase().replace('bottom', ''));\n      }\n    } else {\n      bottomPaginationNode = renderPagination(defaultPosition);\n    }\n  }\n  // >>>>>>>>> Spinning\n  let spinProps;\n  if (typeof loading === 'boolean') {\n    spinProps = {\n      spinning: loading\n    };\n  } else if (typeof loading === 'object') {\n    spinProps = Object.assign({\n      spinning: true\n    }, loading);\n  }\n  // Style\n  const [wrapSSR, hashId] = useStyle(prefixCls);\n  const wrapperClassNames = classNames(`${prefixCls}-wrapper`, {\n    [`${prefixCls}-wrapper-rtl`]: direction === 'rtl'\n  }, className, hashId);\n  return wrapSSR( /*#__PURE__*/React.createElement(\"div\", {\n    ref: ref,\n    className: wrapperClassNames,\n    style: style\n  }, /*#__PURE__*/React.createElement(Spin, Object.assign({\n    spinning: false\n  }, spinProps), topPaginationNode, /*#__PURE__*/React.createElement(RcTable, Object.assign({}, tableProps, {\n    columns: mergedColumns,\n    direction: direction,\n    expandable: mergedExpandable,\n    prefixCls: prefixCls,\n    className: classNames({\n      [`${prefixCls}-middle`]: mergedSize === 'middle',\n      [`${prefixCls}-small`]: mergedSize === 'small',\n      [`${prefixCls}-bordered`]: bordered,\n      [`${prefixCls}-empty`]: rawData.length === 0\n    }),\n    data: pageData,\n    rowKey: getRowKey,\n    rowClassName: internalRowClassName,\n    emptyText: locale && locale.emptyText || (renderEmpty || defaultRenderEmpty)('Table'),\n    // Internal\n    internalHooks: INTERNAL_HOOKS,\n    internalRefs: internalRefs,\n    transformColumns: transformColumns\n  })), bottomPaginationNode)));\n}\nconst ForwardTable = /*#__PURE__*/React.forwardRef(InternalTable);\nconst Table = ForwardTable;\nTable.SELECTION_COLUMN = SELECTION_COLUMN;\nTable.EXPAND_COLUMN = RcTable.EXPAND_COLUMN;\nTable.SELECTION_ALL = SELECTION_ALL;\nTable.SELECTION_INVERT = SELECTION_INVERT;\nTable.SELECTION_NONE = SELECTION_NONE;\nTable.Column = Column;\nTable.ColumnGroup = ColumnGroup;\nTable.Summary = Summary;\nexport default Table;","map":{"version":3,"names":["classNames","RcTable","Summary","convertChildrenToColumns","INTERNAL_HOOKS","omit","React","ConfigContext","defaultRenderEmpty","SizeContext","useBreakpoint","defaultLocale","Pagination","Spin","scrollTo","warning","Column","ColumnGroup","renderExpandIcon","useFilter","getFilterData","useLazyKVMap","usePagination","DEFAULT_PAGE_SIZE","getPaginationParam","useSelection","SELECTION_ALL","SELECTION_COLUMN","SELECTION_INVERT","SELECTION_NONE","useSorter","getSortData","useTitleColumns","useStyle","EMPTY_LIST","InternalTable","props","ref","prefixCls","customizePrefixCls","className","style","size","customizeSize","bordered","dropdownPrefixCls","customizeDropdownPrefixCls","dataSource","pagination","rowSelection","rowKey","rowClassName","columns","children","childrenColumnName","legacyChildrenColumnName","onChange","getPopupContainer","loading","expandIcon","expandable","expandedRowRender","expandIconColumnIndex","indentSize","scroll","sortDirections","locale","showSorterTooltip","process","env","NODE_ENV","length","baseColumns","useMemo","needResponsive","some","col","responsive","screens","mergedColumns","matched","Set","Object","keys","filter","m","c","r","has","tableProps","useContext","contextLocale","renderEmpty","direction","mergedSize","tableLocale","assign","Table","rawData","getPrefixCls","mergedExpandable","expandType","item","internalRefs","body","useRef","getRowKey","record","getRecordByKey","changeEventInfo","triggerOnChange","info","action","reset","arguments","undefined","changeInfo","resetPagination","current","pageSize","scrollToFirstRowOnChange","getContainer","filters","sorter","currentDataSource","sorterStates","filterStates","onSorterChange","transformSorterColumns","sortStates","sorterTitleProps","getSorters","sortedData","onFilterChange","transformFilterColumns","mergedData","columnTitleProps","mergedFilters","forEach","filterKey","transformTitleColumns","onPaginationChange","mergedPagination","pageData","total","slice","transformSelectionColumns","selectedKeySet","data","internalRowClassName","index","indent","mergedRowClassName","__PARENT_RENDER_ICON__","transformColumns","useCallback","innerColumns","topPaginationNode","bottomPaginationNode","paginationSize","renderPagination","position","createElement","defaultPosition","Array","isArray","topPos","find","p","includes","bottomPos","isDisable","every","toLowerCase","replace","spinProps","spinning","wrapSSR","hashId","wrapperClassNames","emptyText","internalHooks","ForwardTable","forwardRef","EXPAND_COLUMN"],"sources":["/data/messenger.client/node_modules/antd/es/table/Table.js"],"sourcesContent":["import classNames from 'classnames';\nimport RcTable, { Summary } from 'rc-table';\nimport { convertChildrenToColumns } from \"rc-table/es/hooks/useColumns\";\nimport { INTERNAL_HOOKS } from \"rc-table/es/Table\";\nimport omit from \"rc-util/es/omit\";\nimport * as React from 'react';\nimport { ConfigContext } from '../config-provider/context';\nimport defaultRenderEmpty from '../config-provider/defaultRenderEmpty';\nimport SizeContext from '../config-provider/SizeContext';\nimport useBreakpoint from '../grid/hooks/useBreakpoint';\nimport defaultLocale from '../locale/en_US';\nimport Pagination from '../pagination';\nimport Spin from '../spin';\nimport scrollTo from '../_util/scrollTo';\nimport warning from '../_util/warning';\nimport Column from './Column';\nimport ColumnGroup from './ColumnGroup';\nimport renderExpandIcon from './ExpandIcon';\nimport useFilter, { getFilterData } from './hooks/useFilter';\nimport useLazyKVMap from './hooks/useLazyKVMap';\nimport usePagination, { DEFAULT_PAGE_SIZE, getPaginationParam } from './hooks/usePagination';\nimport useSelection, { SELECTION_ALL, SELECTION_COLUMN, SELECTION_INVERT, SELECTION_NONE } from './hooks/useSelection';\nimport useSorter, { getSortData } from './hooks/useSorter';\nimport useTitleColumns from './hooks/useTitleColumns';\nimport useStyle from './style';\nconst EMPTY_LIST = [];\nfunction InternalTable(props, ref) {\n  const {\n    prefixCls: customizePrefixCls,\n    className,\n    style,\n    size: customizeSize,\n    bordered,\n    dropdownPrefixCls: customizeDropdownPrefixCls,\n    dataSource,\n    pagination,\n    rowSelection,\n    rowKey = 'key',\n    rowClassName,\n    columns,\n    children,\n    childrenColumnName: legacyChildrenColumnName,\n    onChange,\n    getPopupContainer,\n    loading,\n    expandIcon,\n    expandable,\n    expandedRowRender,\n    expandIconColumnIndex,\n    indentSize,\n    scroll,\n    sortDirections,\n    locale,\n    showSorterTooltip = true\n  } = props;\n  if (process.env.NODE_ENV !== 'production') {\n    process.env.NODE_ENV !== \"production\" ? warning(!(typeof rowKey === 'function' && rowKey.length > 1), 'Table', '`index` parameter of `rowKey` function is deprecated. There is no guarantee that it will work as expected.') : void 0;\n  }\n  const baseColumns = React.useMemo(() => columns || convertChildrenToColumns(children), [columns, children]);\n  const needResponsive = React.useMemo(() => baseColumns.some(col => col.responsive), [baseColumns]);\n  const screens = useBreakpoint(needResponsive);\n  const mergedColumns = React.useMemo(() => {\n    const matched = new Set(Object.keys(screens).filter(m => screens[m]));\n    return baseColumns.filter(c => !c.responsive || c.responsive.some(r => matched.has(r)));\n  }, [baseColumns, screens]);\n  const tableProps = omit(props, ['className', 'style', 'columns']);\n  const size = React.useContext(SizeContext);\n  const {\n    locale: contextLocale = defaultLocale,\n    renderEmpty,\n    direction\n  } = React.useContext(ConfigContext);\n  const mergedSize = customizeSize || size;\n  const tableLocale = Object.assign(Object.assign({}, contextLocale.Table), locale);\n  const rawData = dataSource || EMPTY_LIST;\n  const {\n    getPrefixCls\n  } = React.useContext(ConfigContext);\n  const prefixCls = getPrefixCls('table', customizePrefixCls);\n  const dropdownPrefixCls = getPrefixCls('dropdown', customizeDropdownPrefixCls);\n  const mergedExpandable = Object.assign({\n    childrenColumnName: legacyChildrenColumnName,\n    expandIconColumnIndex\n  }, expandable);\n  const {\n    childrenColumnName = 'children'\n  } = mergedExpandable;\n  const expandType = React.useMemo(() => {\n    if (rawData.some(item => item === null || item === void 0 ? void 0 : item[childrenColumnName])) {\n      return 'nest';\n    }\n    if (expandedRowRender || expandable && expandable.expandedRowRender) {\n      return 'row';\n    }\n    return null;\n  }, [rawData]);\n  const internalRefs = {\n    body: React.useRef()\n  };\n  // ============================ RowKey ============================\n  const getRowKey = React.useMemo(() => {\n    if (typeof rowKey === 'function') {\n      return rowKey;\n    }\n    return record => record === null || record === void 0 ? void 0 : record[rowKey];\n  }, [rowKey]);\n  const [getRecordByKey] = useLazyKVMap(rawData, childrenColumnName, getRowKey);\n  // ============================ Events =============================\n  const changeEventInfo = {};\n  const triggerOnChange = function (info, action) {\n    let reset = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n    const changeInfo = Object.assign(Object.assign({}, changeEventInfo), info);\n    if (reset) {\n      changeEventInfo.resetPagination();\n      // Reset event param\n      if (changeInfo.pagination.current) {\n        changeInfo.pagination.current = 1;\n      }\n      // Trigger pagination events\n      if (pagination && pagination.onChange) {\n        pagination.onChange(1, changeInfo.pagination.pageSize);\n      }\n    }\n    if (scroll && scroll.scrollToFirstRowOnChange !== false && internalRefs.body.current) {\n      scrollTo(0, {\n        getContainer: () => internalRefs.body.current\n      });\n    }\n    onChange === null || onChange === void 0 ? void 0 : onChange(changeInfo.pagination, changeInfo.filters, changeInfo.sorter, {\n      currentDataSource: getFilterData(getSortData(rawData, changeInfo.sorterStates, childrenColumnName), changeInfo.filterStates),\n      action\n    });\n  };\n  /**\n   * Controlled state in `columns` is not a good idea that makes too many code (1000+ line?) to read\n   * state out and then put it back to title render. Move these code into `hooks` but still too\n   * complex. We should provides Table props like `sorter` & `filter` to handle control in next big\n   * version.\n   */\n  // ============================ Sorter =============================\n  const onSorterChange = (sorter, sorterStates) => {\n    triggerOnChange({\n      sorter,\n      sorterStates\n    }, 'sort', false);\n  };\n  const [transformSorterColumns, sortStates, sorterTitleProps, getSorters] = useSorter({\n    prefixCls,\n    mergedColumns,\n    onSorterChange,\n    sortDirections: sortDirections || ['ascend', 'descend'],\n    tableLocale,\n    showSorterTooltip\n  });\n  const sortedData = React.useMemo(() => getSortData(rawData, sortStates, childrenColumnName), [rawData, sortStates]);\n  changeEventInfo.sorter = getSorters();\n  changeEventInfo.sorterStates = sortStates;\n  // ============================ Filter ============================\n  const onFilterChange = (filters, filterStates) => {\n    triggerOnChange({\n      filters,\n      filterStates\n    }, 'filter', true);\n  };\n  const [transformFilterColumns, filterStates, filters] = useFilter({\n    prefixCls,\n    locale: tableLocale,\n    dropdownPrefixCls,\n    mergedColumns,\n    onFilterChange,\n    getPopupContainer\n  });\n  const mergedData = getFilterData(sortedData, filterStates);\n  changeEventInfo.filters = filters;\n  changeEventInfo.filterStates = filterStates;\n  // ============================ Column ============================\n  const columnTitleProps = React.useMemo(() => {\n    const mergedFilters = {};\n    Object.keys(filters).forEach(filterKey => {\n      if (filters[filterKey] !== null) {\n        mergedFilters[filterKey] = filters[filterKey];\n      }\n    });\n    return Object.assign(Object.assign({}, sorterTitleProps), {\n      filters: mergedFilters\n    });\n  }, [sorterTitleProps, filters]);\n  const [transformTitleColumns] = useTitleColumns(columnTitleProps);\n  // ========================== Pagination ==========================\n  const onPaginationChange = (current, pageSize) => {\n    triggerOnChange({\n      pagination: Object.assign(Object.assign({}, changeEventInfo.pagination), {\n        current,\n        pageSize\n      })\n    }, 'paginate');\n  };\n  const [mergedPagination, resetPagination] = usePagination(mergedData.length, pagination, onPaginationChange);\n  changeEventInfo.pagination = pagination === false ? {} : getPaginationParam(pagination, mergedPagination);\n  changeEventInfo.resetPagination = resetPagination;\n  // ============================= Data =============================\n  const pageData = React.useMemo(() => {\n    if (pagination === false || !mergedPagination.pageSize) {\n      return mergedData;\n    }\n    const {\n      current = 1,\n      total,\n      pageSize = DEFAULT_PAGE_SIZE\n    } = mergedPagination;\n    process.env.NODE_ENV !== \"production\" ? warning(current > 0, 'Table', '`current` should be positive number.') : void 0;\n    // Dynamic table data\n    if (mergedData.length < total) {\n      if (mergedData.length > pageSize) {\n        process.env.NODE_ENV !== \"production\" ? warning(false, 'Table', '`dataSource` length is less than `pagination.total` but large than `pagination.pageSize`. Please make sure your config correct data with async mode.') : void 0;\n        return mergedData.slice((current - 1) * pageSize, current * pageSize);\n      }\n      return mergedData;\n    }\n    return mergedData.slice((current - 1) * pageSize, current * pageSize);\n  }, [!!pagination, mergedData, mergedPagination && mergedPagination.current, mergedPagination && mergedPagination.pageSize, mergedPagination && mergedPagination.total]);\n  // ========================== Selections ==========================\n  const [transformSelectionColumns, selectedKeySet] = useSelection(rowSelection, {\n    prefixCls,\n    data: mergedData,\n    pageData,\n    getRowKey,\n    getRecordByKey,\n    expandType,\n    childrenColumnName,\n    locale: tableLocale,\n    getPopupContainer\n  });\n  const internalRowClassName = (record, index, indent) => {\n    let mergedRowClassName;\n    if (typeof rowClassName === 'function') {\n      mergedRowClassName = classNames(rowClassName(record, index, indent));\n    } else {\n      mergedRowClassName = classNames(rowClassName);\n    }\n    return classNames({\n      [`${prefixCls}-row-selected`]: selectedKeySet.has(getRowKey(record, index))\n    }, mergedRowClassName);\n  };\n  // ========================== Expandable ==========================\n  // Pass origin render status into `rc-table`, this can be removed when refactor with `rc-table`\n  mergedExpandable.__PARENT_RENDER_ICON__ = mergedExpandable.expandIcon;\n  // Customize expandable icon\n  mergedExpandable.expandIcon = mergedExpandable.expandIcon || expandIcon || renderExpandIcon(tableLocale);\n  // Adjust expand icon index, no overwrite expandIconColumnIndex if set.\n  if (expandType === 'nest' && mergedExpandable.expandIconColumnIndex === undefined) {\n    mergedExpandable.expandIconColumnIndex = rowSelection ? 1 : 0;\n  } else if (mergedExpandable.expandIconColumnIndex > 0 && rowSelection) {\n    mergedExpandable.expandIconColumnIndex -= 1;\n  }\n  // Indent size\n  if (typeof mergedExpandable.indentSize !== 'number') {\n    mergedExpandable.indentSize = typeof indentSize === 'number' ? indentSize : 15;\n  }\n  // ============================ Render ============================\n  const transformColumns = React.useCallback(innerColumns => transformTitleColumns(transformSelectionColumns(transformFilterColumns(transformSorterColumns(innerColumns)))), [transformSorterColumns, transformFilterColumns, transformSelectionColumns]);\n  let topPaginationNode;\n  let bottomPaginationNode;\n  if (pagination !== false && (mergedPagination === null || mergedPagination === void 0 ? void 0 : mergedPagination.total)) {\n    let paginationSize;\n    if (mergedPagination.size) {\n      paginationSize = mergedPagination.size;\n    } else {\n      paginationSize = mergedSize === 'small' || mergedSize === 'middle' ? 'small' : undefined;\n    }\n    const renderPagination = position => /*#__PURE__*/React.createElement(Pagination, Object.assign({}, mergedPagination, {\n      className: classNames(`${prefixCls}-pagination ${prefixCls}-pagination-${position}`, mergedPagination.className),\n      size: paginationSize\n    }));\n    const defaultPosition = direction === 'rtl' ? 'left' : 'right';\n    const {\n      position\n    } = mergedPagination;\n    if (position !== null && Array.isArray(position)) {\n      const topPos = position.find(p => p.includes('top'));\n      const bottomPos = position.find(p => p.includes('bottom'));\n      const isDisable = position.every(p => `${p}` === 'none');\n      if (!topPos && !bottomPos && !isDisable) {\n        bottomPaginationNode = renderPagination(defaultPosition);\n      }\n      if (topPos) {\n        topPaginationNode = renderPagination(topPos.toLowerCase().replace('top', ''));\n      }\n      if (bottomPos) {\n        bottomPaginationNode = renderPagination(bottomPos.toLowerCase().replace('bottom', ''));\n      }\n    } else {\n      bottomPaginationNode = renderPagination(defaultPosition);\n    }\n  }\n  // >>>>>>>>> Spinning\n  let spinProps;\n  if (typeof loading === 'boolean') {\n    spinProps = {\n      spinning: loading\n    };\n  } else if (typeof loading === 'object') {\n    spinProps = Object.assign({\n      spinning: true\n    }, loading);\n  }\n  // Style\n  const [wrapSSR, hashId] = useStyle(prefixCls);\n  const wrapperClassNames = classNames(`${prefixCls}-wrapper`, {\n    [`${prefixCls}-wrapper-rtl`]: direction === 'rtl'\n  }, className, hashId);\n  return wrapSSR( /*#__PURE__*/React.createElement(\"div\", {\n    ref: ref,\n    className: wrapperClassNames,\n    style: style\n  }, /*#__PURE__*/React.createElement(Spin, Object.assign({\n    spinning: false\n  }, spinProps), topPaginationNode, /*#__PURE__*/React.createElement(RcTable, Object.assign({}, tableProps, {\n    columns: mergedColumns,\n    direction: direction,\n    expandable: mergedExpandable,\n    prefixCls: prefixCls,\n    className: classNames({\n      [`${prefixCls}-middle`]: mergedSize === 'middle',\n      [`${prefixCls}-small`]: mergedSize === 'small',\n      [`${prefixCls}-bordered`]: bordered,\n      [`${prefixCls}-empty`]: rawData.length === 0\n    }),\n    data: pageData,\n    rowKey: getRowKey,\n    rowClassName: internalRowClassName,\n    emptyText: locale && locale.emptyText || (renderEmpty || defaultRenderEmpty)('Table'),\n    // Internal\n    internalHooks: INTERNAL_HOOKS,\n    internalRefs: internalRefs,\n    transformColumns: transformColumns\n  })), bottomPaginationNode)));\n}\nconst ForwardTable = /*#__PURE__*/React.forwardRef(InternalTable);\nconst Table = ForwardTable;\nTable.SELECTION_COLUMN = SELECTION_COLUMN;\nTable.EXPAND_COLUMN = RcTable.EXPAND_COLUMN;\nTable.SELECTION_ALL = SELECTION_ALL;\nTable.SELECTION_INVERT = SELECTION_INVERT;\nTable.SELECTION_NONE = SELECTION_NONE;\nTable.Column = Column;\nTable.ColumnGroup = ColumnGroup;\nTable.Summary = Summary;\nexport default Table;"],"mappings":"AAAA,OAAOA,UAAU,MAAM,YAAY;AACnC,OAAOC,OAAO,IAAIC,OAAO,QAAQ,UAAU;AAC3C,SAASC,wBAAwB,QAAQ,8BAA8B;AACvE,SAASC,cAAc,QAAQ,mBAAmB;AAClD,OAAOC,IAAI,MAAM,iBAAiB;AAClC,OAAO,KAAKC,KAAK,MAAM,OAAO;AAC9B,SAASC,aAAa,QAAQ,4BAA4B;AAC1D,OAAOC,kBAAkB,MAAM,uCAAuC;AACtE,OAAOC,WAAW,MAAM,gCAAgC;AACxD,OAAOC,aAAa,MAAM,6BAA6B;AACvD,OAAOC,aAAa,MAAM,iBAAiB;AAC3C,OAAOC,UAAU,MAAM,eAAe;AACtC,OAAOC,IAAI,MAAM,SAAS;AAC1B,OAAOC,QAAQ,MAAM,mBAAmB;AACxC,OAAOC,OAAO,MAAM,kBAAkB;AACtC,OAAOC,MAAM,MAAM,UAAU;AAC7B,OAAOC,WAAW,MAAM,eAAe;AACvC,OAAOC,gBAAgB,MAAM,cAAc;AAC3C,OAAOC,SAAS,IAAIC,aAAa,QAAQ,mBAAmB;AAC5D,OAAOC,YAAY,MAAM,sBAAsB;AAC/C,OAAOC,aAAa,IAAIC,iBAAiB,EAAEC,kBAAkB,QAAQ,uBAAuB;AAC5F,OAAOC,YAAY,IAAIC,aAAa,EAAEC,gBAAgB,EAAEC,gBAAgB,EAAEC,cAAc,QAAQ,sBAAsB;AACtH,OAAOC,SAAS,IAAIC,WAAW,QAAQ,mBAAmB;AAC1D,OAAOC,eAAe,MAAM,yBAAyB;AACrD,OAAOC,QAAQ,MAAM,SAAS;AAC9B,MAAMC,UAAU,GAAG,EAAE;AACrB,SAASC,aAAa,CAACC,KAAK,EAAEC,GAAG,EAAE;EACjC,MAAM;IACJC,SAAS,EAAEC,kBAAkB;IAC7BC,SAAS;IACTC,KAAK;IACLC,IAAI,EAAEC,aAAa;IACnBC,QAAQ;IACRC,iBAAiB,EAAEC,0BAA0B;IAC7CC,UAAU;IACVC,UAAU;IACVC,YAAY;IACZC,MAAM,GAAG,KAAK;IACdC,YAAY;IACZC,OAAO;IACPC,QAAQ;IACRC,kBAAkB,EAAEC,wBAAwB;IAC5CC,QAAQ;IACRC,iBAAiB;IACjBC,OAAO;IACPC,UAAU;IACVC,UAAU;IACVC,iBAAiB;IACjBC,qBAAqB;IACrBC,UAAU;IACVC,MAAM;IACNC,cAAc;IACdC,MAAM;IACNC,iBAAiB,GAAG;EACtB,CAAC,GAAG/B,KAAK;EACT,IAAIgC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,EAAE;IACzCF,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,GAAGvD,OAAO,CAAC,EAAE,OAAOmC,MAAM,KAAK,UAAU,IAAIA,MAAM,CAACqB,MAAM,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,4GAA4G,CAAC,GAAG,KAAK,CAAC;EACvO;EACA,MAAMC,WAAW,GAAGlE,KAAK,CAACmE,OAAO,CAAC,MAAMrB,OAAO,IAAIjD,wBAAwB,CAACkD,QAAQ,CAAC,EAAE,CAACD,OAAO,EAAEC,QAAQ,CAAC,CAAC;EAC3G,MAAMqB,cAAc,GAAGpE,KAAK,CAACmE,OAAO,CAAC,MAAMD,WAAW,CAACG,IAAI,CAACC,GAAG,IAAIA,GAAG,CAACC,UAAU,CAAC,EAAE,CAACL,WAAW,CAAC,CAAC;EAClG,MAAMM,OAAO,GAAGpE,aAAa,CAACgE,cAAc,CAAC;EAC7C,MAAMK,aAAa,GAAGzE,KAAK,CAACmE,OAAO,CAAC,MAAM;IACxC,MAAMO,OAAO,GAAG,IAAIC,GAAG,CAACC,MAAM,CAACC,IAAI,CAACL,OAAO,CAAC,CAACM,MAAM,CAACC,CAAC,IAAIP,OAAO,CAACO,CAAC,CAAC,CAAC,CAAC;IACrE,OAAOb,WAAW,CAACY,MAAM,CAACE,CAAC,IAAI,CAACA,CAAC,CAACT,UAAU,IAAIS,CAAC,CAACT,UAAU,CAACF,IAAI,CAACY,CAAC,IAAIP,OAAO,CAACQ,GAAG,CAACD,CAAC,CAAC,CAAC,CAAC;EACzF,CAAC,EAAE,CAACf,WAAW,EAAEM,OAAO,CAAC,CAAC;EAC1B,MAAMW,UAAU,GAAGpF,IAAI,CAAC+B,KAAK,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;EACjE,MAAMM,IAAI,GAAGpC,KAAK,CAACoF,UAAU,CAACjF,WAAW,CAAC;EAC1C,MAAM;IACJyD,MAAM,EAAEyB,aAAa,GAAGhF,aAAa;IACrCiF,WAAW;IACXC;EACF,CAAC,GAAGvF,KAAK,CAACoF,UAAU,CAACnF,aAAa,CAAC;EACnC,MAAMuF,UAAU,GAAGnD,aAAa,IAAID,IAAI;EACxC,MAAMqD,WAAW,GAAGb,MAAM,CAACc,MAAM,CAACd,MAAM,CAACc,MAAM,CAAC,CAAC,CAAC,EAAEL,aAAa,CAACM,KAAK,CAAC,EAAE/B,MAAM,CAAC;EACjF,MAAMgC,OAAO,GAAGnD,UAAU,IAAIb,UAAU;EACxC,MAAM;IACJiE;EACF,CAAC,GAAG7F,KAAK,CAACoF,UAAU,CAACnF,aAAa,CAAC;EACnC,MAAM+B,SAAS,GAAG6D,YAAY,CAAC,OAAO,EAAE5D,kBAAkB,CAAC;EAC3D,MAAMM,iBAAiB,GAAGsD,YAAY,CAAC,UAAU,EAAErD,0BAA0B,CAAC;EAC9E,MAAMsD,gBAAgB,GAAGlB,MAAM,CAACc,MAAM,CAAC;IACrC1C,kBAAkB,EAAEC,wBAAwB;IAC5CO;EACF,CAAC,EAAEF,UAAU,CAAC;EACd,MAAM;IACJN,kBAAkB,GAAG;EACvB,CAAC,GAAG8C,gBAAgB;EACpB,MAAMC,UAAU,GAAG/F,KAAK,CAACmE,OAAO,CAAC,MAAM;IACrC,IAAIyB,OAAO,CAACvB,IAAI,CAAC2B,IAAI,IAAIA,IAAI,KAAK,IAAI,IAAIA,IAAI,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,IAAI,CAAChD,kBAAkB,CAAC,CAAC,EAAE;MAC9F,OAAO,MAAM;IACf;IACA,IAAIO,iBAAiB,IAAID,UAAU,IAAIA,UAAU,CAACC,iBAAiB,EAAE;MACnE,OAAO,KAAK;IACd;IACA,OAAO,IAAI;EACb,CAAC,EAAE,CAACqC,OAAO,CAAC,CAAC;EACb,MAAMK,YAAY,GAAG;IACnBC,IAAI,EAAElG,KAAK,CAACmG,MAAM;EACpB,CAAC;EACD;EACA,MAAMC,SAAS,GAAGpG,KAAK,CAACmE,OAAO,CAAC,MAAM;IACpC,IAAI,OAAOvB,MAAM,KAAK,UAAU,EAAE;MAChC,OAAOA,MAAM;IACf;IACA,OAAOyD,MAAM,IAAIA,MAAM,KAAK,IAAI,IAAIA,MAAM,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,MAAM,CAACzD,MAAM,CAAC;EACjF,CAAC,EAAE,CAACA,MAAM,CAAC,CAAC;EACZ,MAAM,CAAC0D,cAAc,CAAC,GAAGvF,YAAY,CAAC6E,OAAO,EAAE5C,kBAAkB,EAAEoD,SAAS,CAAC;EAC7E;EACA,MAAMG,eAAe,GAAG,CAAC,CAAC;EAC1B,MAAMC,eAAe,GAAG,UAAUC,IAAI,EAAEC,MAAM,EAAE;IAC9C,IAAIC,KAAK,GAAGC,SAAS,CAAC3C,MAAM,GAAG,CAAC,IAAI2C,SAAS,CAAC,CAAC,CAAC,KAAKC,SAAS,GAAGD,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK;IACrF,MAAME,UAAU,GAAGlC,MAAM,CAACc,MAAM,CAACd,MAAM,CAACc,MAAM,CAAC,CAAC,CAAC,EAAEa,eAAe,CAAC,EAAEE,IAAI,CAAC;IAC1E,IAAIE,KAAK,EAAE;MACTJ,eAAe,CAACQ,eAAe,EAAE;MACjC;MACA,IAAID,UAAU,CAACpE,UAAU,CAACsE,OAAO,EAAE;QACjCF,UAAU,CAACpE,UAAU,CAACsE,OAAO,GAAG,CAAC;MACnC;MACA;MACA,IAAItE,UAAU,IAAIA,UAAU,CAACQ,QAAQ,EAAE;QACrCR,UAAU,CAACQ,QAAQ,CAAC,CAAC,EAAE4D,UAAU,CAACpE,UAAU,CAACuE,QAAQ,CAAC;MACxD;IACF;IACA,IAAIvD,MAAM,IAAIA,MAAM,CAACwD,wBAAwB,KAAK,KAAK,IAAIjB,YAAY,CAACC,IAAI,CAACc,OAAO,EAAE;MACpFxG,QAAQ,CAAC,CAAC,EAAE;QACV2G,YAAY,EAAE,MAAMlB,YAAY,CAACC,IAAI,CAACc;MACxC,CAAC,CAAC;IACJ;IACA9D,QAAQ,KAAK,IAAI,IAAIA,QAAQ,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,QAAQ,CAAC4D,UAAU,CAACpE,UAAU,EAAEoE,UAAU,CAACM,OAAO,EAAEN,UAAU,CAACO,MAAM,EAAE;MACzHC,iBAAiB,EAAExG,aAAa,CAACW,WAAW,CAACmE,OAAO,EAAEkB,UAAU,CAACS,YAAY,EAAEvE,kBAAkB,CAAC,EAAE8D,UAAU,CAACU,YAAY,CAAC;MAC5Hd;IACF,CAAC,CAAC;EACJ,CAAC;EACD;AACF;AACA;AACA;AACA;AACA;EACE;EACA,MAAMe,cAAc,GAAG,CAACJ,MAAM,EAAEE,YAAY,KAAK;IAC/Cf,eAAe,CAAC;MACda,MAAM;MACNE;IACF,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC;EACnB,CAAC;EACD,MAAM,CAACG,sBAAsB,EAAEC,UAAU,EAAEC,gBAAgB,EAAEC,UAAU,CAAC,GAAGrG,SAAS,CAAC;IACnFQ,SAAS;IACTyC,aAAa;IACbgD,cAAc;IACd9D,cAAc,EAAEA,cAAc,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC;IACvD8B,WAAW;IACX5B;EACF,CAAC,CAAC;EACF,MAAMiE,UAAU,GAAG9H,KAAK,CAACmE,OAAO,CAAC,MAAM1C,WAAW,CAACmE,OAAO,EAAE+B,UAAU,EAAE3E,kBAAkB,CAAC,EAAE,CAAC4C,OAAO,EAAE+B,UAAU,CAAC,CAAC;EACnHpB,eAAe,CAACc,MAAM,GAAGQ,UAAU,EAAE;EACrCtB,eAAe,CAACgB,YAAY,GAAGI,UAAU;EACzC;EACA,MAAMI,cAAc,GAAG,CAACX,OAAO,EAAEI,YAAY,KAAK;IAChDhB,eAAe,CAAC;MACdY,OAAO;MACPI;IACF,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC;EACpB,CAAC;EACD,MAAM,CAACQ,sBAAsB,EAAER,YAAY,EAAEJ,OAAO,CAAC,GAAGvG,SAAS,CAAC;IAChEmB,SAAS;IACT4B,MAAM,EAAE6B,WAAW;IACnBlD,iBAAiB;IACjBkC,aAAa;IACbsD,cAAc;IACd5E;EACF,CAAC,CAAC;EACF,MAAM8E,UAAU,GAAGnH,aAAa,CAACgH,UAAU,EAAEN,YAAY,CAAC;EAC1DjB,eAAe,CAACa,OAAO,GAAGA,OAAO;EACjCb,eAAe,CAACiB,YAAY,GAAGA,YAAY;EAC3C;EACA,MAAMU,gBAAgB,GAAGlI,KAAK,CAACmE,OAAO,CAAC,MAAM;IAC3C,MAAMgE,aAAa,GAAG,CAAC,CAAC;IACxBvD,MAAM,CAACC,IAAI,CAACuC,OAAO,CAAC,CAACgB,OAAO,CAACC,SAAS,IAAI;MACxC,IAAIjB,OAAO,CAACiB,SAAS,CAAC,KAAK,IAAI,EAAE;QAC/BF,aAAa,CAACE,SAAS,CAAC,GAAGjB,OAAO,CAACiB,SAAS,CAAC;MAC/C;IACF,CAAC,CAAC;IACF,OAAOzD,MAAM,CAACc,MAAM,CAACd,MAAM,CAACc,MAAM,CAAC,CAAC,CAAC,EAAEkC,gBAAgB,CAAC,EAAE;MACxDR,OAAO,EAAEe;IACX,CAAC,CAAC;EACJ,CAAC,EAAE,CAACP,gBAAgB,EAAER,OAAO,CAAC,CAAC;EAC/B,MAAM,CAACkB,qBAAqB,CAAC,GAAG5G,eAAe,CAACwG,gBAAgB,CAAC;EACjE;EACA,MAAMK,kBAAkB,GAAG,CAACvB,OAAO,EAAEC,QAAQ,KAAK;IAChDT,eAAe,CAAC;MACd9D,UAAU,EAAEkC,MAAM,CAACc,MAAM,CAACd,MAAM,CAACc,MAAM,CAAC,CAAC,CAAC,EAAEa,eAAe,CAAC7D,UAAU,CAAC,EAAE;QACvEsE,OAAO;QACPC;MACF,CAAC;IACH,CAAC,EAAE,UAAU,CAAC;EAChB,CAAC;EACD,MAAM,CAACuB,gBAAgB,EAAEzB,eAAe,CAAC,GAAG/F,aAAa,CAACiH,UAAU,CAAChE,MAAM,EAAEvB,UAAU,EAAE6F,kBAAkB,CAAC;EAC5GhC,eAAe,CAAC7D,UAAU,GAAGA,UAAU,KAAK,KAAK,GAAG,CAAC,CAAC,GAAGxB,kBAAkB,CAACwB,UAAU,EAAE8F,gBAAgB,CAAC;EACzGjC,eAAe,CAACQ,eAAe,GAAGA,eAAe;EACjD;EACA,MAAM0B,QAAQ,GAAGzI,KAAK,CAACmE,OAAO,CAAC,MAAM;IACnC,IAAIzB,UAAU,KAAK,KAAK,IAAI,CAAC8F,gBAAgB,CAACvB,QAAQ,EAAE;MACtD,OAAOgB,UAAU;IACnB;IACA,MAAM;MACJjB,OAAO,GAAG,CAAC;MACX0B,KAAK;MACLzB,QAAQ,GAAGhG;IACb,CAAC,GAAGuH,gBAAgB;IACpB1E,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,GAAGvD,OAAO,CAACuG,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,sCAAsC,CAAC,GAAG,KAAK,CAAC;IACtH;IACA,IAAIiB,UAAU,CAAChE,MAAM,GAAGyE,KAAK,EAAE;MAC7B,IAAIT,UAAU,CAAChE,MAAM,GAAGgD,QAAQ,EAAE;QAChCnD,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,GAAGvD,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,sJAAsJ,CAAC,GAAG,KAAK,CAAC;QAChO,OAAOwH,UAAU,CAACU,KAAK,CAAC,CAAC3B,OAAO,GAAG,CAAC,IAAIC,QAAQ,EAAED,OAAO,GAAGC,QAAQ,CAAC;MACvE;MACA,OAAOgB,UAAU;IACnB;IACA,OAAOA,UAAU,CAACU,KAAK,CAAC,CAAC3B,OAAO,GAAG,CAAC,IAAIC,QAAQ,EAAED,OAAO,GAAGC,QAAQ,CAAC;EACvE,CAAC,EAAE,CAAC,CAAC,CAACvE,UAAU,EAAEuF,UAAU,EAAEO,gBAAgB,IAAIA,gBAAgB,CAACxB,OAAO,EAAEwB,gBAAgB,IAAIA,gBAAgB,CAACvB,QAAQ,EAAEuB,gBAAgB,IAAIA,gBAAgB,CAACE,KAAK,CAAC,CAAC;EACvK;EACA,MAAM,CAACE,yBAAyB,EAAEC,cAAc,CAAC,GAAG1H,YAAY,CAACwB,YAAY,EAAE;IAC7EX,SAAS;IACT8G,IAAI,EAAEb,UAAU;IAChBQ,QAAQ;IACRrC,SAAS;IACTE,cAAc;IACdP,UAAU;IACV/C,kBAAkB;IAClBY,MAAM,EAAE6B,WAAW;IACnBtC;EACF,CAAC,CAAC;EACF,MAAM4F,oBAAoB,GAAG,CAAC1C,MAAM,EAAE2C,KAAK,EAAEC,MAAM,KAAK;IACtD,IAAIC,kBAAkB;IACtB,IAAI,OAAOrG,YAAY,KAAK,UAAU,EAAE;MACtCqG,kBAAkB,GAAGxJ,UAAU,CAACmD,YAAY,CAACwD,MAAM,EAAE2C,KAAK,EAAEC,MAAM,CAAC,CAAC;IACtE,CAAC,MAAM;MACLC,kBAAkB,GAAGxJ,UAAU,CAACmD,YAAY,CAAC;IAC/C;IACA,OAAOnD,UAAU,CAAC;MAChB,CAAE,GAAEsC,SAAU,eAAc,GAAG6G,cAAc,CAAC3D,GAAG,CAACkB,SAAS,CAACC,MAAM,EAAE2C,KAAK,CAAC;IAC5E,CAAC,EAAEE,kBAAkB,CAAC;EACxB,CAAC;EACD;EACA;EACApD,gBAAgB,CAACqD,sBAAsB,GAAGrD,gBAAgB,CAACzC,UAAU;EACrE;EACAyC,gBAAgB,CAACzC,UAAU,GAAGyC,gBAAgB,CAACzC,UAAU,IAAIA,UAAU,IAAIzC,gBAAgB,CAAC6E,WAAW,CAAC;EACxG;EACA,IAAIM,UAAU,KAAK,MAAM,IAAID,gBAAgB,CAACtC,qBAAqB,KAAKqD,SAAS,EAAE;IACjFf,gBAAgB,CAACtC,qBAAqB,GAAGb,YAAY,GAAG,CAAC,GAAG,CAAC;EAC/D,CAAC,MAAM,IAAImD,gBAAgB,CAACtC,qBAAqB,GAAG,CAAC,IAAIb,YAAY,EAAE;IACrEmD,gBAAgB,CAACtC,qBAAqB,IAAI,CAAC;EAC7C;EACA;EACA,IAAI,OAAOsC,gBAAgB,CAACrC,UAAU,KAAK,QAAQ,EAAE;IACnDqC,gBAAgB,CAACrC,UAAU,GAAG,OAAOA,UAAU,KAAK,QAAQ,GAAGA,UAAU,GAAG,EAAE;EAChF;EACA;EACA,MAAM2F,gBAAgB,GAAGpJ,KAAK,CAACqJ,WAAW,CAACC,YAAY,IAAIhB,qBAAqB,CAACM,yBAAyB,CAACZ,sBAAsB,CAACN,sBAAsB,CAAC4B,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC5B,sBAAsB,EAAEM,sBAAsB,EAAEY,yBAAyB,CAAC,CAAC;EACvP,IAAIW,iBAAiB;EACrB,IAAIC,oBAAoB;EACxB,IAAI9G,UAAU,KAAK,KAAK,KAAK8F,gBAAgB,KAAK,IAAI,IAAIA,gBAAgB,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,gBAAgB,CAACE,KAAK,CAAC,EAAE;IACxH,IAAIe,cAAc;IAClB,IAAIjB,gBAAgB,CAACpG,IAAI,EAAE;MACzBqH,cAAc,GAAGjB,gBAAgB,CAACpG,IAAI;IACxC,CAAC,MAAM;MACLqH,cAAc,GAAGjE,UAAU,KAAK,OAAO,IAAIA,UAAU,KAAK,QAAQ,GAAG,OAAO,GAAGqB,SAAS;IAC1F;IACA,MAAM6C,gBAAgB,GAAGC,QAAQ,IAAI,aAAa3J,KAAK,CAAC4J,aAAa,CAACtJ,UAAU,EAAEsE,MAAM,CAACc,MAAM,CAAC,CAAC,CAAC,EAAE8C,gBAAgB,EAAE;MACpHtG,SAAS,EAAExC,UAAU,CAAE,GAAEsC,SAAU,eAAcA,SAAU,eAAc2H,QAAS,EAAC,EAAEnB,gBAAgB,CAACtG,SAAS,CAAC;MAChHE,IAAI,EAAEqH;IACR,CAAC,CAAC,CAAC;IACH,MAAMI,eAAe,GAAGtE,SAAS,KAAK,KAAK,GAAG,MAAM,GAAG,OAAO;IAC9D,MAAM;MACJoE;IACF,CAAC,GAAGnB,gBAAgB;IACpB,IAAImB,QAAQ,KAAK,IAAI,IAAIG,KAAK,CAACC,OAAO,CAACJ,QAAQ,CAAC,EAAE;MAChD,MAAMK,MAAM,GAAGL,QAAQ,CAACM,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACC,QAAQ,CAAC,KAAK,CAAC,CAAC;MACpD,MAAMC,SAAS,GAAGT,QAAQ,CAACM,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACC,QAAQ,CAAC,QAAQ,CAAC,CAAC;MAC1D,MAAME,SAAS,GAAGV,QAAQ,CAACW,KAAK,CAACJ,CAAC,IAAK,GAAEA,CAAE,EAAC,KAAK,MAAM,CAAC;MACxD,IAAI,CAACF,MAAM,IAAI,CAACI,SAAS,IAAI,CAACC,SAAS,EAAE;QACvCb,oBAAoB,GAAGE,gBAAgB,CAACG,eAAe,CAAC;MAC1D;MACA,IAAIG,MAAM,EAAE;QACVT,iBAAiB,GAAGG,gBAAgB,CAACM,MAAM,CAACO,WAAW,EAAE,CAACC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;MAC/E;MACA,IAAIJ,SAAS,EAAE;QACbZ,oBAAoB,GAAGE,gBAAgB,CAACU,SAAS,CAACG,WAAW,EAAE,CAACC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;MACxF;IACF,CAAC,MAAM;MACLhB,oBAAoB,GAAGE,gBAAgB,CAACG,eAAe,CAAC;IAC1D;EACF;EACA;EACA,IAAIY,SAAS;EACb,IAAI,OAAOrH,OAAO,KAAK,SAAS,EAAE;IAChCqH,SAAS,GAAG;MACVC,QAAQ,EAAEtH;IACZ,CAAC;EACH,CAAC,MAAM,IAAI,OAAOA,OAAO,KAAK,QAAQ,EAAE;IACtCqH,SAAS,GAAG7F,MAAM,CAACc,MAAM,CAAC;MACxBgF,QAAQ,EAAE;IACZ,CAAC,EAAEtH,OAAO,CAAC;EACb;EACA;EACA,MAAM,CAACuH,OAAO,EAAEC,MAAM,CAAC,GAAGjJ,QAAQ,CAACK,SAAS,CAAC;EAC7C,MAAM6I,iBAAiB,GAAGnL,UAAU,CAAE,GAAEsC,SAAU,UAAS,EAAE;IAC3D,CAAE,GAAEA,SAAU,cAAa,GAAGuD,SAAS,KAAK;EAC9C,CAAC,EAAErD,SAAS,EAAE0I,MAAM,CAAC;EACrB,OAAOD,OAAO,EAAE,aAAa3K,KAAK,CAAC4J,aAAa,CAAC,KAAK,EAAE;IACtD7H,GAAG,EAAEA,GAAG;IACRG,SAAS,EAAE2I,iBAAiB;IAC5B1I,KAAK,EAAEA;EACT,CAAC,EAAE,aAAanC,KAAK,CAAC4J,aAAa,CAACrJ,IAAI,EAAEqE,MAAM,CAACc,MAAM,CAAC;IACtDgF,QAAQ,EAAE;EACZ,CAAC,EAAED,SAAS,CAAC,EAAElB,iBAAiB,EAAE,aAAavJ,KAAK,CAAC4J,aAAa,CAACjK,OAAO,EAAEiF,MAAM,CAACc,MAAM,CAAC,CAAC,CAAC,EAAEP,UAAU,EAAE;IACxGrC,OAAO,EAAE2B,aAAa;IACtBc,SAAS,EAAEA,SAAS;IACpBjC,UAAU,EAAEwC,gBAAgB;IAC5B9D,SAAS,EAAEA,SAAS;IACpBE,SAAS,EAAExC,UAAU,CAAC;MACpB,CAAE,GAAEsC,SAAU,SAAQ,GAAGwD,UAAU,KAAK,QAAQ;MAChD,CAAE,GAAExD,SAAU,QAAO,GAAGwD,UAAU,KAAK,OAAO;MAC9C,CAAE,GAAExD,SAAU,WAAU,GAAGM,QAAQ;MACnC,CAAE,GAAEN,SAAU,QAAO,GAAG4D,OAAO,CAAC3B,MAAM,KAAK;IAC7C,CAAC,CAAC;IACF6E,IAAI,EAAEL,QAAQ;IACd7F,MAAM,EAAEwD,SAAS;IACjBvD,YAAY,EAAEkG,oBAAoB;IAClC+B,SAAS,EAAElH,MAAM,IAAIA,MAAM,CAACkH,SAAS,IAAI,CAACxF,WAAW,IAAIpF,kBAAkB,EAAE,OAAO,CAAC;IACrF;IACA6K,aAAa,EAAEjL,cAAc;IAC7BmG,YAAY,EAAEA,YAAY;IAC1BmD,gBAAgB,EAAEA;EACpB,CAAC,CAAC,CAAC,EAAEI,oBAAoB,CAAC,CAAC,CAAC;AAC9B;AACA,MAAMwB,YAAY,GAAG,aAAahL,KAAK,CAACiL,UAAU,CAACpJ,aAAa,CAAC;AACjE,MAAM8D,KAAK,GAAGqF,YAAY;AAC1BrF,KAAK,CAACtE,gBAAgB,GAAGA,gBAAgB;AACzCsE,KAAK,CAACuF,aAAa,GAAGvL,OAAO,CAACuL,aAAa;AAC3CvF,KAAK,CAACvE,aAAa,GAAGA,aAAa;AACnCuE,KAAK,CAACrE,gBAAgB,GAAGA,gBAAgB;AACzCqE,KAAK,CAACpE,cAAc,GAAGA,cAAc;AACrCoE,KAAK,CAACjF,MAAM,GAAGA,MAAM;AACrBiF,KAAK,CAAChF,WAAW,GAAGA,WAAW;AAC/BgF,KAAK,CAAC/F,OAAO,GAAGA,OAAO;AACvB,eAAe+F,KAAK"},"metadata":{},"sourceType":"module"}